import axios from "axios";
import myTokens from "./auth";
import router from "../router/index";
import { CheckLogin } from "../api/login";
import { showToast } from "vant";

const instance = axios.create({
    //访问node初始路径
    baseURL: 'https://sapi.jiangdaye.cn/',
    // baseURL: 'http://www.mryang.fun/'
    timeout: 10000
  });
  
   
  //请求拦截器
  instance.interceptors.request.use(function (config) {
   
    // if(res.result===0){
    //    console.log(111111111);
    // }else{
    //   console.log(222222222222);
    // }
    if(myTokens.getToken()){
    
       
      //设置当前登录得令牌
      config.headers.Authorization="Bearer "+myTokens.getToken();
    }
    // 在发送请求之前做些什么
    return config;
  }, function (error) {
    // 对请求错误做些什么
    return Promise.reject(error);
  });


  // 添加响应拦截器
  instance.interceptors.response.use(function (response) {
    // 2xx 范围内的状态码都会触发该函数。
    // 对响应数据做点什么
    const routes=router.options.history.location
 if(routes!="/login"){
    // CheckLogin().then((res)=>{
    //   if(res.result!==0){
    //       router.push("/login")
    //   }
    // })
 }
    return response.data;
  }, function (error) { 
    if (error.code === "ECONNABORTED") {
      showToast('请求网络超时')
        return;
    }

    if(error.response.status===401){
      //状态401跳转回登录页面， 异地登录，token发生变化会引起重新登录
      // router.push('/login');  
      showToast("登录过期,请重新登录")
      router.push("/login")
       return;
    }

    
    // 超出 2xx 范围的状态码都会触发该函数。
    // 对响应错误做点什么
    return Promise.reject(error);
  });

  export default instance




